<?php

/**
 * 支付_抽象类
 */
abstract class Pay {

    /**
     * 生成订单 
     */
    abstract public function pay_get(&$params);

    /**
     * 确认订单 
     */
    abstract public function pay_confirm(&$params);

    /**
     * 建立请求，以表单HTML形式构造（默认）
     * @param $para_temp 请求参数数组
     * @param $method 提交方式。两个值可选：post、get
     * @param $button_name 确认按钮显示文字
     * @return 提交表单HTML文本
     */
    function buildRequestForm($action, $method, $para, $button_name) {
        $sHtml = "<div style='display:none'><form id='paysubmit' name='paysubmit' action='" . $action . "' method='" . $method . "'>";
        foreach ($para as $key => $value) {
            $sHtml.= "<input type='hidden' name='" . $key . "' value='" . $value . "'/>";
        }
        //submit按钮控件请不要含有name属性
        $sHtml = $sHtml . "<input type='submit' value='" . $button_name . "'></form>";
        $sHtml = $sHtml . "<script>document.forms['paysubmit'].submit();</script></div>";
        return $sHtml;
    }

}

?>
